This just shows a brief example of how you can start a game and trigger turns to progress.
library(MundusCentrum)
game <- new_game(
name = "Anno Uno",
players = list(
list(
name = "Big Grizz",
team = "Space Marines",
units = system.file("extdata", "unit-templates", "big_grizz.csv", package = "MundusCentrum")
),
list(
name = "Eric",
team = "Space Orcs",
units = system.file("extdata", "unit-templates", "eric.csv", package = "MundusCentrum")
),
list(
name = "Chris",
team = "Tyrannids",
units = system.file("extdata", "unit-templates", "chris.csv", package = "MundusCentrum")
)
),
points = 2000
)
## All units resolved.
This is the state of the game at the beginning
res <- reconcile_player_orders(game)
## All units resolved.
print(draw_map(res))
knitr::kable(add_keywords(res))
| player | loc | unit_type | action | unit_name | control | transport | fast | fly | soar | deep | sneak |
|---|---|---|---|---|---|---|---|---|---|---|---|
| big_grizz | B10 | deathwing_captain | control | Hussain Zaidi | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE | FALSE |
| big_grizz | B10 | deathwing_knights | control | Charles Sanders Peirce | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE | FALSE |
| big_grizz | B10 | deathwing_terminators | control | Aldous Huxley | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE | FALSE |
| big_grizz | B10 | dreadnought | control | Kendall Sherman | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | B10 | eliminators | control | Toto | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE |
| big_grizz | B10 | eradicators | control | Joel Cook | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | B10 | infiltrators | control | Thomas Frost | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE |
| big_grizz | B10 | invictor_tactical_warsuit | control | Danger Mouse | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE |
| big_grizz | B10 | phobos_librarian | control | The Neptunes | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE |
| big_grizz | B10 | ravenwing_apothecary | control | William Holden | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | B10 | ravenwing_attack_bike | control | Richard Burton | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | B10 | ravenwing_attack_bike | control | Scarlett Johansson | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | B10 | ravenwing_bike_squad | control | David Niven | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | B10 | ravenwing_talonmaster | control | Vin Diesel | FALSE | FALSE | TRUE | TRUE | FALSE | FALSE | FALSE |
| big_grizz | B10 | redemptor_dreadnought | control | Christian Simon | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | B10 | rhino | control | Don Cheadle Miranda | FALSE | TRUE | TRUE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | B10 | storm_raven | control | Dwayne Johnson | FALSE | TRUE | TRUE | TRUE | TRUE | FALSE | FALSE |
| big_grizz | B10 | tactical_squad | control | Anna Espinoza | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | B10 | tactical_squad | control | Clara Wood | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | B10 | tactical_squad | control | Joseph Cervantes | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | B10 | tactical_squad | control | Payton May | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | B10 | techmarine | control | David Owens | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | B10 | vindicare_assassin | control | James Anthony Carmichael & Lionel Richie | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE |
| eric | C4 | canoptek_plasmacyte | control | Tha Overlord | FALSE | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE |
| eric | C4 | canoptek_scarab_swarms | control | Andy Serkis | FALSE | FALSE | TRUE | TRUE | FALSE | FALSE | FALSE |
| eric | C4 | canoptek_scarab_swarms | control | Idris Elba | FALSE | FALSE | TRUE | TRUE | FALSE | FALSE | FALSE |
| eric | C4 | canoptek_scarab_swarms | control | Mark Wahlberg | FALSE | FALSE | TRUE | TRUE | FALSE | FALSE | FALSE |
| eric | C4 | canoptek_scarab_swarms | control | Master Menace | FALSE | FALSE | TRUE | TRUE | FALSE | FALSE | FALSE |
| eric | C4 | canoptek_scarab_swarms | control | Pesty Deck | FALSE | FALSE | TRUE | TRUE | FALSE | FALSE | FALSE |
| eric | C4 | canoptek_spyders | control | Dogface Commander | FALSE | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE |
| eric | C4 | canoptek_spyders | control | Mad Prophet | FALSE | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE |
| eric | C4 | canoptek_wraiths | control | Zoe Saldana | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE | FALSE |
| eric | C4 | cryptothralls | control | Bryson Chambers | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | C4 | cryptothralls | control | Isabelle Yang | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | C4 | deathmarks | control | Marina A. Ledin, Victor Ledin | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE | TRUE |
| eric | C4 | illuminor_szeras | control | Elijah Phillips | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | C4 | immortals | control | Khloe Morris | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | C4 | immortals | control | Laila Ferguson | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | C4 | immortals | control | Vanessa Castaneda | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | C4 | lychgaurd | control | Leilani Garza | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | C4 | necron_warriors | control | Eden Walters | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | C4 | necron_warriors | control | Layla Campos | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | C4 | night_scythe | control | Billy Preston | FALSE | TRUE | FALSE | TRUE | TRUE | FALSE | FALSE |
| eric | C4 | night_scythe | control | Gerald Durrell Collins | FALSE | TRUE | FALSE | TRUE | TRUE | FALSE | FALSE |
| eric | C4 | overlord | control | Greyson Alvarado | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | C4 | overlord | control | Sarah Ramirez | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | C4 | royal_warden | control | Abel Garcia | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | C4 | royal_warden | control | Hayden Bailey | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | C4 | skorpekh_destroyers | control | Camila Schmidt | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | C4 | technomancer | control | Max Scheler | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE | FALSE |
| eric | C4 | trazyn_the_infinite | control | Elise Gregory | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| chris | F2 | biovores | control | Angel Graham | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| chris | F2 | broodlord | control | Neil Dorfsman | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE |
| chris | F2 | flying_hive_tryant | control | Ol’ Dirty Bandit | FALSE | FALSE | TRUE | TRUE | TRUE | FALSE | FALSE |
| chris | F2 | genestealers | control | Paul Epworth | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE |
| chris | F2 | hive_crone | control | Eric Clapton | FALSE | FALSE | TRUE | TRUE | TRUE | FALSE | FALSE |
| chris | F2 | hive_guard | control | Mateo Holmes | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| chris | F2 | hormagaunts | control | Caden Roberts | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| chris | F2 | lictor | control | Peter Asher | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE | TRUE |
| chris | F2 | raveners | control | Karl Jaspers | FALSE | FALSE | TRUE | FALSE | FALSE | TRUE | FALSE |
| chris | F2 | ripper_swarms | control | Jacques Lacan | TRUE | FALSE | FALSE | FALSE | FALSE | TRUE | FALSE |
| chris | F2 | termagants | control | Taylor Moreno | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| chris | F2 | tyranid_warriors | control | Giovanni Fleming | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| chris | F2 | zoathropes | control | Irate Warrior | FALSE | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE |
Get a list of unit ID’s to easily make the modify_unit() calls below.
moby_units <- read_player_map(game, "big_grizz") %>% pull(unit_name)
eric_units <- read_player_map(game, "eric") %>% pull(unit_name)
chris_units <- read_player_map(game, "chris") %>% pull(unit_name)
Players change their maps (making orders)
modify_unit(game, "big_grizz", moby_units[1], "control","B10")
modify_unit(game, "big_grizz", moby_units[c(2:8, 14:18, 22, 23)], "move", "E2")
modify_unit(game, "big_grizz", moby_units[9], "control","B11")
modify_unit(game, "big_grizz", moby_units[10:13], "move","E1")
modify_unit(game, "big_grizz", moby_units[19:20], "move","B6")
modify_unit(game, "big_grizz", moby_units[21], "move","B8")
modify_unit(game, "eric", eric_units[1:9], "move", "C1")
modify_unit(game, "eric", eric_units[10:17], "move","F7")
modify_unit(game, "eric", eric_units[18:24], "control","C3")
modify_unit(game, "eric", eric_units[25:28], "control","C4")
modify_unit(game, "chris", chris_units[1:5], "control","F1")
modify_unit(game, "chris", chris_units[6:9], "control","F2")
modify_unit(game, "chris", chris_units[10:11],"move", "F3")
modify_unit(game, "chris", chris_units[12],"move", "E5")
modify_unit(game, "chris", chris_units[13],"move", "F4")
Reconcile moves.
res <- reconcile_player_orders(game)
## All units resolved.
print(draw_map(res))
knitr::kable(add_keywords(res))
| player | loc | unit_type | action | unit_name | control | transport | fast | fly | soar | deep | sneak |
|---|---|---|---|---|---|---|---|---|---|---|---|
| big_grizz | B10 | ravenwing_talonmaster | control | Vin Diesel | FALSE | FALSE | TRUE | TRUE | FALSE | FALSE | FALSE |
| big_grizz | B11 | infiltrators | control | Thomas Frost | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE |
| big_grizz | B6 | eliminators | move | Toto | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE |
| big_grizz | B6 | vindicare_assassin | move | James Anthony Carmichael & Lionel Richie | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE |
| big_grizz | B8 | eradicators | move | Joel Cook | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | C1 | canoptek_plasmacyte | move | Tha Overlord | FALSE | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE |
| eric | C1 | canoptek_spyders | move | Dogface Commander | FALSE | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE |
| eric | C1 | canoptek_spyders | move | Mad Prophet | FALSE | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE |
| eric | C1 | illuminor_szeras | move | Elijah Phillips | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | C1 | immortals | move | Khloe Morris | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | C1 | lychgaurd | move | Leilani Garza | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | C1 | skorpekh_destroyers | move | Camila Schmidt | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | C1 | technomancer | move | Max Scheler | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE | FALSE |
| eric | C1 | trazyn_the_infinite | move | Elise Gregory | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | C3 | canoptek_scarab_swarms | control | Andy Serkis | FALSE | FALSE | TRUE | TRUE | FALSE | FALSE | FALSE |
| eric | C3 | canoptek_scarab_swarms | control | Master Menace | FALSE | FALSE | TRUE | TRUE | FALSE | FALSE | FALSE |
| eric | C3 | immortals | control | Laila Ferguson | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | C3 | necron_warriors | control | Eden Walters | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | C3 | night_scythe | control | Gerald Durrell Collins | FALSE | TRUE | FALSE | TRUE | TRUE | FALSE | FALSE |
| eric | C3 | overlord | control | Sarah Ramirez | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | C3 | royal_warden | control | Hayden Bailey | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | C4 | canoptek_scarab_swarms | control | Idris Elba | FALSE | FALSE | TRUE | TRUE | FALSE | FALSE | FALSE |
| eric | C4 | canoptek_scarab_swarms | control | Pesty Deck | FALSE | FALSE | TRUE | TRUE | FALSE | FALSE | FALSE |
| eric | C4 | immortals | control | Vanessa Castaneda | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | C4 | necron_warriors | control | Layla Campos | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | E1 | dreadnought | move | Kendall Sherman | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | E1 | ravenwing_attack_bike | move | Richard Burton | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | E1 | ravenwing_attack_bike | move | Scarlett Johansson | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | E1 | ravenwing_bike_squad | move | David Niven | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | E2 | deathwing_captain | move | Hussain Zaidi | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE | FALSE |
| big_grizz | E2 | deathwing_knights | move | Charles Sanders Peirce | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE | FALSE |
| big_grizz | E2 | deathwing_terminators | move | Aldous Huxley | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE | FALSE |
| big_grizz | E2 | invictor_tactical_warsuit | move | Danger Mouse | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE |
| big_grizz | E2 | phobos_librarian | move | The Neptunes | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE |
| big_grizz | E2 | ravenwing_apothecary | move | William Holden | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | E2 | redemptor_dreadnought | move | Christian Simon | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | E2 | rhino | move | Don Cheadle Miranda | FALSE | TRUE | TRUE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | E2 | storm_raven | move | Dwayne Johnson | FALSE | TRUE | TRUE | TRUE | TRUE | FALSE | FALSE |
| big_grizz | E2 | tactical_squad | move | Anna Espinoza | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | E2 | tactical_squad | move | Clara Wood | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | E2 | tactical_squad | move | Joseph Cervantes | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | E2 | tactical_squad | move | Payton May | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | E2 | techmarine | move | David Owens | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| chris | E5 | lictor | move | Peter Asher | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE | TRUE |
| chris | F1 | broodlord | control | Neil Dorfsman | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE |
| chris | F1 | flying_hive_tryant | control | Ol’ Dirty Bandit | FALSE | FALSE | TRUE | TRUE | TRUE | FALSE | FALSE |
| chris | F1 | genestealers | control | Paul Epworth | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE |
| chris | F1 | hive_crone | control | Eric Clapton | FALSE | FALSE | TRUE | TRUE | TRUE | FALSE | FALSE |
| chris | F1 | tyranid_warriors | control | Giovanni Fleming | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| chris | F2 | biovores | control | Angel Graham | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| chris | F2 | hive_guard | control | Mateo Holmes | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| chris | F2 | hormagaunts | control | Caden Roberts | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| chris | F2 | termagants | control | Taylor Moreno | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| chris | F3 | ripper_swarms | move | Jacques Lacan | TRUE | FALSE | FALSE | FALSE | FALSE | TRUE | FALSE |
| chris | F3 | zoathropes | move | Irate Warrior | FALSE | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE |
| chris | F4 | raveners | move | Karl Jaspers | FALSE | FALSE | TRUE | FALSE | FALSE | TRUE | FALSE |
| eric | F7 | canoptek_scarab_swarms | move | Mark Wahlberg | FALSE | FALSE | TRUE | TRUE | FALSE | FALSE | FALSE |
| eric | F7 | canoptek_wraiths | move | Zoe Saldana | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE | FALSE |
| eric | F7 | cryptothralls | move | Bryson Chambers | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | F7 | cryptothralls | move | Isabelle Yang | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | F7 | deathmarks | move | Marina A. Ledin, Victor Ledin | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE | TRUE |
| eric | F7 | night_scythe | move | Billy Preston | FALSE | TRUE | FALSE | TRUE | TRUE | FALSE | FALSE |
| eric | F7 | overlord | move | Greyson Alvarado | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | F7 | royal_warden | move | Abel Garcia | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
Take a look at what individual players can see. Here’s Chris’ map:
draw_map(res, "chris")
We’re good! Move on to the next turn. (Battle awaits!)
Players change their maps (making orders)
# uncomment to print the calls you would make to move all units
#modify_unit_calls(res)
modify_unit(game, "big_grizz", "E2", "attack", "F1")
modify_unit(game, "big_grizz", "B6", "control", "B6")
modify_unit(game, "big_grizz", "B11", "attack", "E3")
modify_unit(game, "big_grizz", "B8", "attack", "B2")
modify_unit(game, "big_grizz", "E1", "attack", "B2")
modify_unit(game, "chris", "E5", "move", "E5") # 1 units
modify_unit(game, "chris", "F1", "control", "F1") # 5 units
modify_unit(game, "chris", "F2", "control", "F2") # 4 units
modify_unit(game, "chris", "F3", "move", "F4") # 2 units
modify_unit(game, "chris", "F4", "control", "F4") # 1 units
modify_unit(game, "eric", "F7", "attack", "F4") # 8 units
modify_unit(game, "eric", "C1", "move", "B4") # 9 units
Attempt to reconcile moves.
res <- reconcile_player_orders(game)
## CONFLICT(s):
## Warning: Conflict is at hand! Please resolve territorial disputes.
print(draw_map(res, "CONFLICT!"))
knitr::kable(add_keywords(res))
| player | loc | unit_type | action | unit_name | control | transport | fast | fly | soar | deep | sneak |
|---|---|---|---|---|---|---|---|---|---|---|---|
| big_grizz | F1 | deathwing_captain | attack | Hussain Zaidi | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE | FALSE |
| big_grizz | F1 | deathwing_knights | attack | Charles Sanders Peirce | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE | FALSE |
| big_grizz | F1 | deathwing_terminators | attack | Aldous Huxley | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE | FALSE |
| big_grizz | F1 | invictor_tactical_warsuit | attack | Danger Mouse | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE |
| big_grizz | F1 | phobos_librarian | attack | The Neptunes | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE |
| big_grizz | F1 | ravenwing_apothecary | attack | William Holden | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | F1 | redemptor_dreadnought | attack | Christian Simon | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | F1 | rhino | attack | Don Cheadle Miranda | FALSE | TRUE | TRUE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | F1 | storm_raven | attack | Dwayne Johnson | FALSE | TRUE | TRUE | TRUE | TRUE | FALSE | FALSE |
| big_grizz | F1 | tactical_squad | attack | Anna Espinoza | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | F1 | tactical_squad | attack | Clara Wood | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | F1 | tactical_squad | attack | Joseph Cervantes | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | F1 | tactical_squad | attack | Payton May | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | F1 | techmarine | attack | David Owens | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| chris | F1 | broodlord | control | Neil Dorfsman | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE |
| chris | F1 | flying_hive_tryant | control | Ol’ Dirty Bandit | FALSE | FALSE | TRUE | TRUE | TRUE | FALSE | FALSE |
| chris | F1 | genestealers | control | Paul Epworth | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE |
| chris | F1 | hive_crone | control | Eric Clapton | FALSE | FALSE | TRUE | TRUE | TRUE | FALSE | FALSE |
| chris | F1 | tyranid_warriors | control | Giovanni Fleming | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| chris | F4 | raveners | control | Karl Jaspers | FALSE | FALSE | TRUE | FALSE | FALSE | TRUE | FALSE |
| chris | F4 | ripper_swarms | control | Jacques Lacan | TRUE | FALSE | FALSE | FALSE | FALSE | TRUE | FALSE |
| chris | F4 | zoathropes | control | Irate Warrior | FALSE | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE |
| eric | F4 | canoptek_scarab_swarms | attack | Mark Wahlberg | FALSE | FALSE | TRUE | TRUE | FALSE | FALSE | FALSE |
| eric | F4 | canoptek_wraiths | attack | Zoe Saldana | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE | FALSE |
| eric | F4 | cryptothralls | attack | Bryson Chambers | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | F4 | cryptothralls | attack | Isabelle Yang | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | F4 | deathmarks | attack | Marina A. Ledin, Victor Ledin | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE | TRUE |
| eric | F4 | night_scythe | attack | Billy Preston | FALSE | TRUE | FALSE | TRUE | TRUE | FALSE | FALSE |
| eric | F4 | overlord | attack | Greyson Alvarado | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | F4 | royal_warden | attack | Abel Garcia | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
This is where the players would resolved fights however they see fit (e.g. Warhammer, chessboxing, what-have-you)
Then they adjust their maps accordingly for the outcome of the conflicts.
modify_unit(game, "eric", "F4", "retreat", "F7")
modify_unit(game, "chris", "F1", "retreat", "F2")
Now we reconcile again.
res <- reconcile_player_orders(game)
## All units resolved.
print(draw_map(res))
knitr::kable(add_keywords(res))
| player | loc | unit_type | action | unit_name | control | transport | fast | fly | soar | deep | sneak |
|---|---|---|---|---|---|---|---|---|---|---|---|
| big_grizz | B10 | ravenwing_talonmaster | control | Vin Diesel | FALSE | FALSE | TRUE | TRUE | FALSE | FALSE | FALSE |
| big_grizz | B2 | dreadnought | attack | Kendall Sherman | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | B2 | eradicators | attack | Joel Cook | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | B2 | ravenwing_attack_bike | attack | Richard Burton | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | B2 | ravenwing_attack_bike | attack | Scarlett Johansson | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | B2 | ravenwing_bike_squad | attack | David Niven | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE | FALSE |
| eric | B4 | canoptek_plasmacyte | move | Tha Overlord | FALSE | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE |
| eric | B4 | canoptek_spyders | move | Dogface Commander | FALSE | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE |
| eric | B4 | canoptek_spyders | move | Mad Prophet | FALSE | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE |
| eric | B4 | illuminor_szeras | move | Elijah Phillips | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | B4 | immortals | move | Khloe Morris | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | B4 | lychgaurd | move | Leilani Garza | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | B4 | skorpekh_destroyers | move | Camila Schmidt | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | B4 | technomancer | move | Max Scheler | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE | FALSE |
| eric | B4 | trazyn_the_infinite | move | Elise Gregory | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | B6 | eliminators | control | Toto | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE |
| big_grizz | B6 | vindicare_assassin | control | James Anthony Carmichael & Lionel Richie | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE |
| eric | C3 | canoptek_scarab_swarms | control | Andy Serkis | FALSE | FALSE | TRUE | TRUE | FALSE | FALSE | FALSE |
| eric | C3 | canoptek_scarab_swarms | control | Master Menace | FALSE | FALSE | TRUE | TRUE | FALSE | FALSE | FALSE |
| eric | C3 | immortals | control | Laila Ferguson | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | C3 | necron_warriors | control | Eden Walters | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | C3 | night_scythe | control | Gerald Durrell Collins | FALSE | TRUE | FALSE | TRUE | TRUE | FALSE | FALSE |
| eric | C3 | overlord | control | Sarah Ramirez | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | C3 | royal_warden | control | Hayden Bailey | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | C4 | canoptek_scarab_swarms | control | Idris Elba | FALSE | FALSE | TRUE | TRUE | FALSE | FALSE | FALSE |
| eric | C4 | canoptek_scarab_swarms | control | Pesty Deck | FALSE | FALSE | TRUE | TRUE | FALSE | FALSE | FALSE |
| eric | C4 | immortals | control | Vanessa Castaneda | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | C4 | necron_warriors | control | Layla Campos | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | E3 | infiltrators | attack | Thomas Frost | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE |
| chris | E5 | lictor | move | Peter Asher | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE | TRUE |
| big_grizz | F1 | deathwing_captain | attack | Hussain Zaidi | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE | FALSE |
| big_grizz | F1 | deathwing_knights | attack | Charles Sanders Peirce | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE | FALSE |
| big_grizz | F1 | deathwing_terminators | attack | Aldous Huxley | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE | FALSE |
| big_grizz | F1 | invictor_tactical_warsuit | attack | Danger Mouse | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE |
| big_grizz | F1 | phobos_librarian | attack | The Neptunes | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE |
| big_grizz | F1 | ravenwing_apothecary | attack | William Holden | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | F1 | redemptor_dreadnought | attack | Christian Simon | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | F1 | rhino | attack | Don Cheadle Miranda | FALSE | TRUE | TRUE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | F1 | storm_raven | attack | Dwayne Johnson | FALSE | TRUE | TRUE | TRUE | TRUE | FALSE | FALSE |
| big_grizz | F1 | tactical_squad | attack | Anna Espinoza | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | F1 | tactical_squad | attack | Clara Wood | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | F1 | tactical_squad | attack | Joseph Cervantes | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | F1 | tactical_squad | attack | Payton May | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | F1 | techmarine | attack | David Owens | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| chris | F2 | biovores | control | Angel Graham | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| chris | F2 | hive_guard | control | Mateo Holmes | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| chris | F2 | hormagaunts | control | Caden Roberts | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| chris | F2 | termagants | control | Taylor Moreno | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| chris | F2 | broodlord | retreat | Neil Dorfsman | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE |
| chris | F2 | flying_hive_tryant | retreat | Ol’ Dirty Bandit | FALSE | FALSE | TRUE | TRUE | TRUE | FALSE | FALSE |
| chris | F2 | genestealers | retreat | Paul Epworth | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE |
| chris | F2 | hive_crone | retreat | Eric Clapton | FALSE | FALSE | TRUE | TRUE | TRUE | FALSE | FALSE |
| chris | F2 | tyranid_warriors | retreat | Giovanni Fleming | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| chris | F4 | raveners | control | Karl Jaspers | FALSE | FALSE | TRUE | FALSE | FALSE | TRUE | FALSE |
| chris | F4 | ripper_swarms | control | Jacques Lacan | TRUE | FALSE | FALSE | FALSE | FALSE | TRUE | FALSE |
| chris | F4 | zoathropes | control | Irate Warrior | FALSE | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE |
| eric | F7 | canoptek_scarab_swarms | retreat | Mark Wahlberg | FALSE | FALSE | TRUE | TRUE | FALSE | FALSE | FALSE |
| eric | F7 | canoptek_wraiths | retreat | Zoe Saldana | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE | FALSE |
| eric | F7 | cryptothralls | retreat | Bryson Chambers | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | F7 | cryptothralls | retreat | Isabelle Yang | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | F7 | deathmarks | retreat | Marina A. Ledin, Victor Ledin | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE | TRUE |
| eric | F7 | night_scythe | retreat | Billy Preston | FALSE | TRUE | FALSE | TRUE | TRUE | FALSE | FALSE |
| eric | F7 | overlord | retreat | Greyson Alvarado | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | F7 | royal_warden | retreat | Abel Garcia | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
We’re good. On to turn 3.
Notice that in this turn Chris and Eric sit across from each other in F2 and C3. At this point they should fight, but the mechanic isn’t clear. If C3 attacks F2 and F2 attacks C3 then, as it’s currently coded, they would pass in the night. This is not right.
Unfortunately, this will be more complicated with longer moves, but we probably still need to trace the paths because, when paths cross, swords must cross.
Players change their maps (making orders)
modify_unit(game, "big_grizz", "B2", "move", "B1") # 5 units
modify_unit(game, "big_grizz", "B6", "move", "C1") # 2 units
modify_unit(game, "big_grizz", "E3", "move", "E4") # 1 units
modify_unit(game, "big_grizz", "F1", "control", "F1") # 14 units
modify_unit(game, "chris", "E5", "move", "E7") # 1 units
modify_unit(game, "chris", "F2", "control", "F2") # 9 units
modify_unit(game, "chris", "F4", "control", "F4") # 3 units
modify_unit(game, "eric", "B4", "move", "B1") # 9 units
modify_unit(game, "eric", "C3", "control", "C3") # 7 units
modify_unit(game, "eric", "F7", "control", "F7") # 8 units
Attempt to reconcile moves.
res <- reconcile_player_orders(game)
## CONFLICT(s):
## Warning: Conflict is at hand! Please resolve territorial disputes.
print(draw_map(res, "CONFLICT!"))
knitr::kable(add_keywords(res))
| player | loc | unit_type | action | unit_name | control | transport | fast | fly | soar | deep | sneak |
|---|---|---|---|---|---|---|---|---|---|---|---|
| big_grizz | B1 | dreadnought | move | Kendall Sherman | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | B1 | eradicators | move | Joel Cook | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | B1 | ravenwing_attack_bike | move | Richard Burton | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | B1 | ravenwing_attack_bike | move | Scarlett Johansson | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE | FALSE |
| big_grizz | B1 | ravenwing_bike_squad | move | David Niven | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE | FALSE |
| eric | B1 | canoptek_plasmacyte | move | Tha Overlord | FALSE | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE |
| eric | B1 | canoptek_spyders | move | Dogface Commander | FALSE | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE |
| eric | B1 | canoptek_spyders | move | Mad Prophet | FALSE | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE |
| eric | B1 | illuminor_szeras | move | Elijah Phillips | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | B1 | immortals | move | Khloe Morris | TRUE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | B1 | lychgaurd | move | Leilani Garza | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | B1 | skorpekh_destroyers | move | Camila Schmidt | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
| eric | B1 | technomancer | move | Max Scheler | FALSE | FALSE | FALSE | FALSE | FALSE | TRUE | FALSE |
| eric | B1 | trazyn_the_infinite | move | Elise Gregory | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE | FALSE |
Another fight, this time in B1, but neither force was attacking or controlling. They just ran into each other. Does this play differently? Bonuses or lack thereof?
modify_unit(game, "big_grizz", "B1", "retreat", "B2") # 5 units
res <- reconcile_player_orders(game)
## All units resolved.
I have Chris here holding to control in both F2 (instead of attacking F1) and F4 (instead of pursuing Eric into F7), and Eric holding C3 and F7. I’m thinking maybe there is some benefit to resting like this? Getting reinforcements? Heailing?
(Mostly I just didn’t want to process too many battles this turn)
Sidenote: notice how everyone’s vision changes… The territories with a black dot are invisible behind fog-o’-war for that player and the ones with an empty dot are visible but unoccupied. Also, note: I haven’t yet implemented communication relays or any way to control a territory without having a unit in it. Need to discuss that at some point.
Grizz
draw_map(res, "big_grizz")
Chris
draw_map(res, "chris")
Eric
draw_map(res, "eric")